Power ISA | |
---|---|
Llançament | 2006 |
Característiques de CPUs | |
Conjunt d'instruccions | POWER ISA |
Característiques de Connectors | |
Representació esquemàtica | |
← PowerPC |
Power ISA és una arquitectura de conjunt d'instruccions (ISA) desenvolupada actualment per la Fundació OpenPOWER, liderada per IBM. Va ser desenvolupat originalment per IBM i l'ara desaparegut grup industrial Power.org. Power ISA és una evolució del PowerPC ISA, creat per la fusió del nucli PowerPC ISA i el Book E opcional per a aplicacions incrustades. La fusió d'aquests dos components el 2006 va ser liderada pels fundadors de Power.org IBM i Freescale Semiconductor.[1]
Abans de la versió 3.0, l'ISA es divideix en diverses categories. Els processadors implementen un conjunt d'aquestes categories segons sigui necessari per a la seva tasca. Es requereixen diferents classes de processadors per implementar determinades categories, per exemple un processador de classe de servidor inclou les categories: Base, Servidor, Punt flotant, 64 bits, etc. Tots els processadors implementen la categoria Base.[2]
Power ISA és una arquitectura de càrrega/emmagatzematge RISC. Té diversos conjunts de registres :
Les instruccions fins a la versió 3.0 tenen una longitud de 32 bits, amb l'excepció del subconjunt VLE (codificació de longitud variable) que proporciona una densitat de codi més alta per a aplicacions incrustades de gamma baixa, i la versió 3.1 que va introduir el prefix per crear instruccions de 64 bits. La majoria de les instruccions són triàdiques, és a dir, tenen dos operands font i una destinació. S'admeten operacions de coma flotant de precisió simple i doble que compleixen amb IEEE-754, incloses instruccions addicionals de multiplicació-addició fusionada (FMA) i instruccions decimals de coma flotant. Hi ha disposicions per a operacions d'instrucció única, múltiples dades (SIMD) sobre dades senceres i de coma flotant en fins a 16 elements en una instrucció.[3]
Power ISA té suport per a la memòria cau de Harvard, és a dir, la memòria cau dividida de dades i instruccions, i suport per a la memòria cau unificada. Les operacions de memòria són estrictament de càrrega/emmagatzematge, però permeten una execució fora d'ordre. També hi ha suport per a l'adreçament gran i petit endian amb categories separades per a l'endianitat modificada i per pàgina, i suport tant per a l'adreçament de 32 bits com de 64 bits.
Els diferents modes de funcionament inclouen usuari, supervisor i hipervisor.